CloudCompare | 您所在的位置:网站首页 › MATLAB 点云误差显示 › CloudCompare |
目录
1.二次曲面拟合2.参考文献3.操作流程4.完整操作5.算法源码6.相关代码
![]() 本文由CSDN点云侠原创,原文链接。爬虫网站自重。博客长期更新,本文最新更新时间为:2023年8月6日。 1.二次曲面拟合二次曲面方程如下: z ( x , y ) = a x 2 + b x y + c y 2 + d x + e y + f (1) z(x,y)=ax^2+bxy+cy^2+dx+ey+f \tag{1} z(x,y)=ax2+bxy+cy2+dx+ey+f(1) 采用最小二乘法拟合局部二次曲面,建立目标函数为: z = ∑ i = 0 k [ z ( x i , y i ) − z i ] 2 (2) z=\sum_{i=0}^{k}[z(x_i,y_i)-z_i]^2 \tag{2} z=i=0∑k[z(xi,yi)−zi]2(2) 联立式( 1) 和式( 2) ,对各项系数求偏导,并令偏导数等于零,得到线性方程组,见式( 3) ,求解线性方程组,得到局部二次拟合曲面方程。 [ ∑ i = 0 k x i 4 ∑ i = 0 k x i 3 y i ∑ i = 0 k x i 2 y i ∑ i = 0 k x i 3 ∑ i = 0 k x i 2 y i ∑ i = 0 k x i 2 ∑ i = 0 k x i 3 y i ∑ i = 0 k x i 2 y i 2 ∑ i = 0 k x i y i 3 ∑ i = 0 k x i 2 y i ∑ i = 0 k x i y i 2 ∑ i = 0 k x i y i ∑ i = 0 k x i 2 y i 2 ∑ i = 0 k x i y i 3 ∑ i = 0 k y i 4 ∑ i = 0 k x i y i 2 ∑ i = 0 k y i 3 ∑ i = 0 k y i 2 ∑ i = 0 k x i 3 ∑ i = 0 k x i 2 y i ∑ i = 0 k x i y i 2 ∑ i = 0 k x i 2 ∑ i = 0 k x i y i ∑ i = 0 k x i ∑ i = 0 k x i 2 y i ∑ i = 0 k x i y i 2 ∑ i = 0 k y i 3 ∑ i = 0 k x i y i ∑ i = 0 k y i 2 ∑ i = 0 k y i ∑ i = 0 k x i 2 ∑ i = 0 k x i y i ∑ i = 0 k y i 2 ∑ i = 0 k x i ∑ i = 0 k y i ∑ i = 0 k 1 ] [ a b c d e f ] = [ ∑ i = 0 k z i x i 2 ∑ i = 0 k z i x i y i ∑ i = 0 k z i y i 2 ∑ i = 0 k z i x i ∑ i = 0 k z i y i ∑ i = 0 k z i ] (3) \left[ \begin{matrix} \sum_{i=0}^{k}x_i^4 & \sum_{i=0}^{k}x_i^3y_i & \sum_{i=0}^{k}x_i^2y_i& \sum_{i=0}^{k}x_i^3& \sum_{i=0}^{k}x_i^2y_i& \sum_{i=0}^{k}x_i^2\\ \sum_{i=0}^{k}x_i^3y_i & \sum_{i=0}^{k}x_i^2y_i^2 & \sum_{i=0}^{k}x_iy_i^3 & \sum_{i=0}^{k}x_i^2y_i& \sum_{i=0}^{k}x_iy_i^2& \sum_{i=0}^{k}x_iy_i\\ \sum_{i=0}^{k}x_i^2y_i^2 & \sum_{i=0}^{k}x_iy_i^3 & \sum_{i=0}^{k}y_i^4 & \sum_{i=0}^{k}x_iy_i^2 & \sum_{i=0}^{k}y_i^3 & \sum_{i=0}^{k}y_i^2\\ \sum_{i=0}^{k}x_i^3 & \sum_{i=0}^{k}x_i^2y_i & \sum_{i=0}^{k}x_iy_i^2 & \sum_{i=0}^{k}x_i^2 & \sum_{i=0}^{k}x_iy_i & \sum_{i=0}^{k}x_i\\ \sum_{i=0}^{k}x_i^2y_i & \sum_{i=0}^{k}x_iy_i^2 & \sum_{i=0}^{k}y_i^3 & \sum_{i=0}^{k}x_iy_i & \sum_{i=0}^{k}y_i^2 & \sum_{i=0}^{k}y_i\\ \sum_{i=0}^{k}x_i^2 & \sum_{i=0}^{k}x_iy_i & \sum_{i=0}^{k}y_i^2 & \sum_{i=0}^{k}x_i & \sum_{i=0}^{k}y_i & \sum_{i=0}^{k}1\\ \end{matrix} \right] \left[ \begin{matrix} a \\ b \\ c \\ d \\ e \\ f \\ \end{matrix} \right]= \left[ \begin{matrix} \sum_{i=0}^{k}z_ix_i^2 \\ \sum_{i=0}^{k}z_ix_iy_i \\ \sum_{i=0}^{k}z_iy_i^2 \\ \sum_{i=0}^{k}z_ix_i \\ \sum_{i=0}^{k}z_iy_i \\ \sum_{i=0}^{k}z_i \\ \end{matrix} \right]\tag{3} ∑i=0kxi4∑i=0kxi3yi∑i=0kxi2yi2∑i=0kxi3∑i=0kxi2yi∑i=0kxi2∑i=0kxi3yi∑i=0kxi2yi2∑i=0kxiyi3∑i=0kxi2yi∑i=0kxiyi2∑i=0kxiyi∑i=0kxi2yi∑i=0kxiyi3∑i=0kyi4∑i=0kxiyi2∑i=0kyi3∑i=0kyi2∑i=0kxi3∑i=0kxi2yi∑i=0kxiyi2∑i=0kxi2∑i=0kxiyi∑i=0kxi∑i=0kxi2yi∑i=0kxiyi2∑i=0kyi3∑i=0kxiyi∑i=0kyi2∑i=0kyi∑i=0kxi2∑i=0kxiyi∑i=0kyi2∑i=0kxi∑i=0kyi∑i=0k1 abcdef = ∑i=0kzixi2∑i=0kzixiyi∑i=0kziyi2∑i=0kzixi∑i=0kziyi∑i=0kzi (3) 2.参考文献[1] 方程喜,隋立春,朱海雄.用于公路勘测设计的LiDAR点云抽稀算法[J].测绘通报,2017(10):58-61+88. 3.操作流程
此外,还生成了拟合曲面的mesh模型,可以用来计算点云到模型的距离。 [1] PCL 最小二乘拟合二次曲面 [2] matlab 最小二乘拟合二次曲面 [3] Open3D 点云最小二乘拟合二次曲面 |
CopyRight 2018-2019 实验室设备网 版权所有 |